Python/ko

설명

파이썬(Python)은 스크립트나 매크로를 생성하여 일부 작업을 자동화하는 대규모 애플리케이션에서 매우 일반적으로 사용되는 범용 고급 프로그래밍 언어입니다.

FreeCAD에서는 파이썬 코드를 사용하면 그래픽 사용자 인터페이스를 클릭하지 않고도 다양한 요소를 프로그래밍 방식으로 만들 수 있습니다. 게다가, FreeCAD의 많은 도구와 작업대는 파이썬으로 프로그래밍되어 있습니다.

파이썬 프로그래밍 언어에 대해 알아보려면 파이썬 소개를 참조하세요.그런 다음 파이썬 스크립팅 자습서FreeCAD 스크립팅 기초를 참조하여 FreeCAD에서 스크립팅을 시작하세요.

가독성

파이썬 코드의 가독성은 이 언어의 가장 중요한 측면 중 하나입니다. 파이썬 커뮤니티에서 명확하고 일관된 스타일을 사용하면 다양한 개발자의 기여가 용이해집니다. 대부분의 숙련된 파이썬 프로그래머는 코드가 특정 방식으로 포맷되고 특정 규칙을 따르기를 기대하기 때문입니다. 파이썬 코드를 작성할 때는 PEP8: 파이썬 코드 스타일 가이드PEP257: 문서문자열 규칙을 따르는 것이 좋습니다.

다음 문서에서는 더욱 사용자 친화적인 방식으로 설명을 제공합니다.

규칙

이 문서에서는 따라야 하는 파이썬 예제에 대한 몇 가지 규칙을 보여줍니다.

아래는 일반적인 함수 서명입니다.

Wire = make_wire(pointslist, closed=False, placement=None, face=None, support=None)
Wire = make_wire(pointslist, False, None, None, None)
Wire = make_wire(pointslist, False, None, None)
Wire = make_wire(pointslist, False, None)
Wire = make_wire(pointslist, False)
Wire = make_wire(pointslist)
이 예에서 첫 번째 인수에는 기본값이 없으므로 항상 포함되어야 합니다.
Wire = make_wire(pointslist, closed=False, placement=None, face=None)
Wire = make_wire(pointslist, closed=False, face=None, placement=None)
Wire = make_wire(pointslist, placement=None, closed=False, face=None)
Wire = make_wire(pointslist, support=None, closed=False, placement=None, face=None)
p1 = Vector(0, 0, 0)
p2 = Vector(1, 1, 0)
p3 = Vector(2, 0, 0)
Wire = make_wire([p1, p2, p3], closed=True)
a_list = [1, 2, 3,
          2, 4, 5]

Wire = make_wire(pointslist,
                False, None,
                None, None)
Wire = make_wire(pointslist, closed=True, face=True)
Window = make_window(Wire, name="Big window")

가져오기(import)

파이썬 함수는 모듈이라는 파일에 저장됩니다. 해당 모듈의 어떤 기능을 사용하려면 먼저 해당 모듈을 import 명령어로 문서에 포함해야 합니다.

이렇게 하면 접두사가 붙은 함수, 즉 module.function()가 생성됩니다. 이 시스템은 서로 다른 모듈에서 온 동일한 이름을 가진 함수들 간의 이름 충돌을 방지합니다. 예를 들어, 두 함수 Arch.make_window()myModule.make_window()는 문제 없이 공존할 수 있습니다.

전체 예시에는 필요한 가져오기와 접두사가 붙은 함수가 포함되어야 합니다.

import FreeCAD as App
import Draft

p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1, 1, 0)
p3 = App.Vector(2, 0, 0)
Wire = Draft.make_wire([p1, p2, p3], closed=True)
import FreeCAD as App
import Draft
import Arch

p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1, 0, 0)
p3 = App.Vector(1, 1, 0)
p4 = App.Vector(0, 2, 0)
pointslist = [p1, p2, p3, p4]

Wire = Draft.make_wire(pointslist, closed=True, face=True)
Structure = Arch.make_structure(Wire, name="Big pillar")